//
// Source code recreated from a .class file by IntelliJ IDEA
// (powered by FernFlower decompiler)
//

package com.itheima.pinda.authority.dto.auth;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

@ApiModel(
        value = "ResourceQueryDTO",
        description = "资源查询"
)
public class ResourceQueryDTO {
    @ApiModelProperty(
            value = "菜单id",
            notes = "指定菜单id"
    )
    private Long menuId;
    @ApiModelProperty(
            value = "指定用户id",
            notes = "指定用户id，前端不传则自动获取"
    )
    private Long userId;

    public static ResourceQueryDTO.ResourceQueryDTOBuilder builder() {
        return new ResourceQueryDTO.ResourceQueryDTOBuilder();
    }

    public Long getMenuId() {
        return this.menuId;
    }

    public Long getUserId() {
        return this.userId;
    }

    public void setMenuId(final Long menuId) {
        this.menuId = menuId;
    }

    public void setUserId(final Long userId) {
        this.userId = userId;
    }

    public boolean equals(final Object o) {
        if (o == this) {
            return true;
        } else if (!(o instanceof ResourceQueryDTO)) {
            return false;
        } else {
            ResourceQueryDTO other = (ResourceQueryDTO)o;
            if (!other.canEqual(this)) {
                return false;
            } else {
                Object this$menuId = this.getMenuId();
                Object other$menuId = other.getMenuId();
                if (this$menuId == null) {
                    if (other$menuId != null) {
                        return false;
                    }
                } else if (!this$menuId.equals(other$menuId)) {
                    return false;
                }

                Object this$userId = this.getUserId();
                Object other$userId = other.getUserId();
                if (this$userId == null) {
                    if (other$userId != null) {
                        return false;
                    }
                } else if (!this$userId.equals(other$userId)) {
                    return false;
                }

                return true;
            }
        }
    }

    protected boolean canEqual(final Object other) {
        return other instanceof ResourceQueryDTO;
    }

    public int hashCode() {
        boolean PRIME = true;
        int result = 1;
        Object $menuId = this.getMenuId();
        result = result * 59 + ($menuId == null ? 43 : $menuId.hashCode());
        Object $userId = this.getUserId();
        result = result * 59 + ($userId == null ? 43 : $userId.hashCode());
        return result;
    }

    public String toString() {
        return "ResourceQueryDTO(menuId=" + this.getMenuId() + ", userId=" + this.getUserId() + ")";
    }

    public ResourceQueryDTO() {
    }

    public ResourceQueryDTO(final Long menuId, final Long userId) {
        this.menuId = menuId;
        this.userId = userId;
    }

    public static class ResourceQueryDTOBuilder {
        private Long menuId;
        private Long userId;

        ResourceQueryDTOBuilder() {
        }

        public ResourceQueryDTO.ResourceQueryDTOBuilder menuId(final Long menuId) {
            this.menuId = menuId;
            return this;
        }

        public ResourceQueryDTO.ResourceQueryDTOBuilder userId(final Long userId) {
            this.userId = userId;
            return this;
        }

        public ResourceQueryDTO build() {
            return new ResourceQueryDTO(this.menuId, this.userId);
        }

        public String toString() {
            return "ResourceQueryDTO.ResourceQueryDTOBuilder(menuId=" + this.menuId + ", userId=" + this.userId + ")";
        }
    }
}
